System for simultaneous pivoting and translation of robot arm of storage library

ABSTRACT

Utilities (e.g., systems, apparatuses, methods) that reduce robotic assembly contention in media element storage libraries by translating (e.g., displacing) a robot arm of a first robotic assembly mounted over a first storage array of a storage library away from a central reference plane as the robot arm is being pivoted into a first position adjacent the first storage array to allow a robot arm of a second robotic assembly to slide or otherwise move past the robot arm of the first robotic assembly, even when the robot arms of the first and second robot arms are disposed at the same height (e.g., along a z-axis) within the storage library. For instance, a pivot member of the robot arm may be mounted on a carriage that is configured to translate between the first and second storage arrays in response to the pivot member being pivoted about a pivot axis.

BACKGROUND

1. Field of the Invention

The present invention relates generally to storage libraries for storinga plurality of media elements such as tape cartridges and, moreparticularly, to robotic assemblies that are configured to manipulatemedia elements within a storage library.

2. Relevant Background

Storage library systems are often used by enterprises and the like toefficiently store and retrieve data from storage media. In the case ofsome storage libraries, the media may be data or media elements (e.g.,tape cartridges) that are typically stored and indexed within a set ofmagazines. When particular data is requested, for instance, aspecialized robotic assembly or mechanism (e.g., robotic module) findsthe appropriate cartridge, removes the cartridge from its magazine, andcarries the cartridge to a drive that is designed to receive thecartridge and read its contents. Some storage libraries have multipledrives that can operate concurrently to perform input/output (IO)operations on multiple cartridges.

To operate properly, each robotic mechanism is expected to reliably(e.g., repeatedly and accurately) and rapidly find, retrieve, anddeliver desired media elements (e.g., per instructions from one or morehost computers) throughout the storage library cartridge inventory.Generally, a robotic mechanism includes a hand assembly (e.g., picker)that is operable to reliably grip a desired cartridge and remove it froma magazine or drive, or to reliably grip a cartridge and release thecartridge into a desired magazine slot or drive. The robotic mechanismis often configured to translate or displace an arm on or in which thehand assembly is mounted along the z axis (e.g., in the verticaldimension along a column of media elements) and along an x or y axis(e.g., in a horizontal dimension along a row of media elements), such asthrough any appropriate arrangement of gears, tracks, belts, cables,hydraulics, and/or other such control mechanisms. Some roboticmechanisms are configured to pivot or rotate the arm and/or handassembly about one or more of the x, y, or z axes (e.g., roll, pitch andyaw, respectively).

As automated storage libraries have become larger and more complex,their designs have evolved from a single wall or array of storage slotsto multiple walls of storage slots in various shapes and configurations.For instance, one type of storage library includes first and secondspaced storage arrays separated by an aisle and whose storage ormagazine slots generally face each other. A robotic assembly (e.g.,robotics module) mounted over one of the storage arrays is configured tomanipulate media elements on the storage array, such as by grabbing andremoving a media element and mounting the media element in anotherstorage slot or media drive or by grabbing and inserting a media elementinto a particular storage slot of the array. In one arrangement, arobotic assembly may be configured to manipulate media elements ofeither of the first or second spaced storage arrays, such as by pivotingor rotating its robot arm through 180° or the like to access the firstor second storage arrays as appropriate. In an attempt to increasethroughput, two or more robotic assemblies may be mounted on the samerail assembly over one of the storage arrays, where the robot arms ofeach of the robotic assemblies can access media elements of both of thefirst and second storage arrays, such as by pivoting or rotating itsrobot arm through 180° or the like to access the first or second storagearrays as appropriate.

SUMMARY

One problem that arises when two or more robotic assemblies are mountedon the same rail assembly over the same storage array is contentionbetween the first and second robotic assemblies when trying tosimultaneously complete different respective jobs. In the case where afirst robotic assembly moves to the middle of the first or secondstorage arrays (e.g., to retrieve a media element, to access a mediaplayer, etc.), for instance, a second robotic assembly would have towait to access the middle of the first or second storage array or anylocation on the other end of the first or second storage array due tothe inability of first and second robotic assemblies on the same railassembly to be able to pass each other. Even if such first and secondrobotic assemblies were respectively mounted over the first and secondstorage arrays on different respective rail assemblies, contention wouldstill result because the pivot axes of the robot arms are typicallydisposed halfway between the first and second storage arrays to allowthe robot arms to access either of the first or second storage arrays bypivoting through 180°. More specifically, attempting to move the firstrobotic assembly past the second robotic assembly (or vice versa) wouldresult in contact or interference between the first and second roboticassemblies as both of their robot arm pivot axes are disposed halfwaybetween the first and second storage arrays (e.g., when the robot armsof the first and second robotic assemblies are disposed at the sameheight or position along the z-axis). In this situation, a systemcontroller or the like would receive signal regarding the potentialcontact or contention and accordingly inhibit movement of first roboticassembly to complete its job until the second robotic assembly has beenmoved out of the path of the first robotic assembly resulting in mediaelement access delays and other inefficiencies.

In view of the foregoing, disclosed herein is a system allows a robotarm of a robotic assembly to pivot or rotate about a pivot axis betweena first rotational position adjacent a first storage array of a storagelibrary and a second rotational position adjacent a spaced secondstorage array of the storage library (e.g., through 180 degrees or thelike) while simultaneously translating or displacing the pivot axis (andthus the entire robot arm) between a first translational positionadjacent the first storage array and a second translational positiondisposed towards the second storage array to eliminate or reduce roboticassembly contention and other related inefficiencies in a media elementstorage library.

As used herein, the x-axis is defined to be an axis that is horizontaland parallel to the front faces of the first and second storage arrays(e.g., parallel to the openings of the storage slots of the first andsecond storage arrays), the y-axis is defined to be an axis that ishorizontal and perpendicular to the front faces of the first and secondstorage arrays (e.g., perpendicular to the openings of the storage slotsof the first and second storage arrays), and the z-axis is defined to bean axis that is vertical and parallel to the front faces of the firstand second storage arrays (e.g., parallel to the openings of the storageslots of the first and second storage arrays).

More specifically, the robot arm of the disclosed robotic assemblyincludes any appropriate pivot apparatus or member (e.g., pivot pin orthe like) that facilitates pivoting or rotation of the robot arm aboutthe pivot axis (e.g., about the z-axis or the x-axis) between the firstand second positions. The pivot member is mounted on a movable carriagethat is configured to slide or otherwise translate (e.g., along they-axis or x and y-axes) between the first and second translationpositions relative to a mounting apparatus of the robotic assembly inresponse to the pivot member of the robot arm being pivoted about thepivot axis (via a cam assembly interconnected between the pivot member,the carriage and the mounting apparatus).

When the robot arm of a first robotic assembly that is mounted over thefirst storage array is thus pivoted into its first rotational positionadjacent the first storage array, its moveable carriage and pivot axisare thus positioned at a first translational position. In the firsttranslational position, a first free end of the robot arm (on a firstside of the pivot axis) is adjacent the first storage array (e.g., toallow a picker to emerge from the first free end to manipulate mediaelements of the first storage array) and a second free end of the robotarm (on an opposite second side of the pivot axis separated by about180° from the first free end) is spaced from the first storage array butpositioned between the first storage array and a reference plane (e.g.,a central reference plane) positioned halfway between the first andsecond storage arrays along the z-axis. Similarly, when the robot arm ofa second robotic assembly mounted over the second storage array ispivoted into its first rotational position adjacent the second storagearray, its moveable carriage and pivot axis are thus positioned at afirst translational position so that the first free end of its robot armis adjacent the second storage array (e.g., to allow a picker to emergefrom the first free end to manipulate media elements of the secondstorage array) and the second free end of its robot arm is positionedbetween the second storage array and the reference plane.

In this regard, the robot arm and pivot axis of the first roboticassembly are thus fully contained or disposed between the first storagearray and the reference plane (but do not overlap or intersect thereference plane) when in the first rotational and translationalpositions and the robot arm and pivot axis of the second roboticassembly are thus fully contained or disposed between the second storagearray and the reference plane (but do not overlap or intersect thereference plane) when in the first rotational and translationalpositions. Advantageously, the robot arm of either of the first andsecond robotic assemblies can move past (e.g., along the x-axis) therobot arm of the other of the first and second robotic assemblies whenin their first rotational and translational positions, even when therobot arms are positioned at the same height along the z-axis.

Thereafter, when the robot arms are no longer overlapping along thex-axis (when one of the robot arms has moved past the other of the robotarms), the robot arm of at least one of the first and second roboticassemblies can be pivoted (e.g., via a corresponding motor and systemcontroller) into its second rotational position which simultaneouslytranslates the carriage, robot arm and pivot axis into the secondtranslational position to position the first free end of the robot armadjacent the other of the first and second storage arrays formanipulation of media elements thereof. For instance, pivoting of therobot arm of the first robotic assembly about its pivot axis into itssecond rotational position simultaneously translates the pivot axis (andthus the robot arm) into its second translational position towards thesecond storage array so that the first free end of the robot arm“reaches across” the aisle or interior space between the first andsecond storage arrays to a position adjacent the second storage array toallow the picker to emerge from the first free end to manipulate mediaelements of the second storage array. In the second rotational andtranslational positions, the robot arm and pivot axis of the firstrobotic assembly are disposed between the second storage array and thereference plane.

In one arrangement, each robotic assembly may have at least one x-axisguide or guiding member or apparatus, such as upper and lower x-axisguide members or apparatuses that are slidable or translatable along anx-axis within respective upper and lower tracks or grooves that areadjacent upper and lower portions of the first and second storagearrays. In another arrangement, the upper and lower guide members ofeach robotic assembly may be slidable within respective upper and lowertracks or grooves along an x-axis adjacent the ceiling and floor of thestorage library. In further arrangements, the robotic assemblies may betranslatable along the x-axis in other manners such as through magneticstrips, optical guides, and/or the like. In any case, each roboticassembly may also include any appropriate z-axis guide member orapparatus (e.g., rail assembly) interconnected between the upper andlower x-axis guide members along which the robot arm is configured totranslate or slide along the z-axis. For instance, the mountingapparatus of each robotic assembly may be rigidly secured to a slidingmember that is configured to slide or translate along a z-axis relativeto the x-axis guide members of the robotic assembly.

In one aspect, a robotic assembly for manipulating media elements in amedia element storage library is disclosed that includes a mountingapparatus, a carriage member slidably attached to the mounting apparatusfor movement relative to the mounting apparatus along a translationaxis, a robot arm pivotally attached to the carriage member for rotationabout a pivot axis fixed through the carriage member between at least afirst rotational position for manipulating media elements of a firststorage array of a storage library and a second rotational position formanipulating media elements of a second storage array of the storagelibrary that is spaced from the first storage array, and a cam assemblythat induces translation of the carriage member along the translationaxis between at least a first translational position in response torotation of the robot arm about the pivot axis into the first rotationalposition and a second translational position in response to rotation ofthe robot arm about the pivot axis into the second rotational position.

In one arrangement, the cam assembly may include a slot within themounting apparatus, a rotating component rotatably attached to thecarriage member for rotation about a rotation axis, and a sliding memberattached to the rotating component and slidably received in the slotsuch that rotation of the robot arm about the pivot axis inducesrotation of the rotating component about the rotation axis to slide thesliding member in the slot and thereby simultaneously translate thecarriage member along the translation axis. For instance, the camassembly may be in the form of a scotch yoke or slotted link mechanism.

In one variation, the robotic assembly may further include a pivotmember pivotally attached to the carriage member along the pivot axis,where the robot arm is non-movably attached to the pivot member, andwhere rotation of the pivot member about the pivot axis induces rotationof the rotating component about the rotation axis to slide the slidingmember in the slot and thereby simultaneously translate the carriagemember along the translation axis. For instance, the pivot member mayinclude a first gear non-movably attached thereto for rotation about thepivot axis, the rotating component may include a second gear rotatableabout the rotation axis, and the cam assembly may further include athird gear intermeshed with the first and second gears that inducesrotation of the second gear about the rotation axis in a clockwise orcounterclockwise direction when the first gear is rotated about thepivot axis in the clockwise or counterclockwise direction.

In another aspect, a method of operating a robotic assembly of a mediaelement storage library is disclosed that includes first rotating arobot arm of a robotic assembly about a pivot axis from a firstrotational position adjacent a first storage array of a media elementstorage library to a second rotational position adjacent a secondstorage array that is spaced from the first storage array, and firsttranslating the pivot axis towards the second storage array in directresponse to and simultaneously with the rotating step. For instance, thefirst translating may include displacing the pivot axis along atranslation axis from a first translational position to a secondtranslational position that is disposed between the first translationalposition and the second storage array.

In a further aspect, a media element storage library includes a firststorage array including a plurality of media element storage slots, asecond storage array including a plurality of media element storageslots that are spaced from and face the media element storage slots ofthe first storage array, a first robotic assembly configured totranslate over the first storage array parallel to an x-axis, and asecond robotic assembly configured to translate over the second storagearray parallel to the x-axis. The first robotic assembly includes arobot arm that is pivotal about a pivot axis between at least a firstrotational position for manipulating media elements in the media elementstorage slots of the first storage array and a second rotationalposition for manipulating media elements in the media element storageslots of the second storage array, and the second robotic assemblyincludes a robot arm that is pivotal about a pivot axis between at leasta first rotational position for manipulating media elements in the mediaelement storage slots of the second storage array and a secondrotational position for manipulating media elements in the media elementstorage slots of the first storage array. The robot arms of the firstand second robotic assemblies are simultaneously positionable in theirrespective first rotational positions at a common height along a z-axisthat is perpendicular to the x-axis.

In one arrangement, pivoting of the robot arm of the first roboticassembly about the pivot axis of the first robotic assembly inducessimultaneous translation of the pivot axis of the first robotic assemblyalong a first course that is parallel to a y-axis, pivoting of the robotarm of the second robotic assembly about the pivot axis of the secondrobotic assembly induces simultaneous translation of the pivot axis ofthe second robotic assembly along a second course that is parallel tothe y-axis, and the y-axis is perpendicular to each of the x and z-axes.

Any of the embodiments, arrangements, or the like discussed herein maybe used (either alone or in combination with other embodiments,arrangement, or the like) with any of the disclosed aspects. Merelyintroducing a feature in accordance with commonly accepted antecedentbasis practice does not limit the corresponding feature to the singular.Any failure to use phrases such as “at least one” does not limit thecorresponding feature to the singular. Use of the phrase “at leastgenerally,” “at least partially,” “substantially” or the like inrelation to a particular feature encompasses the correspondingcharacteristic and insubstantial variations thereof. Furthermore, areference of a feature in conjunction with the phrase “in oneembodiment” does not limit the use of the feature to a singleembodiment.

In addition to the exemplary aspects and embodiments described above,further aspects and embodiments will become apparent by reference to thedrawings and by study of the following descriptions.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a perspective view of a media element storage library withinwhich the robotic assemblies disclosed herein may be utilized.

FIG. 2 is a plan view of the media element storage library of FIG. 1.

FIG. 3 is a perspective view of a robotic assembly disclosed herein,with a robot arm of the robotic assembly in a first rotational andtranslational position.

FIG. 4 is a perspective view similar to that in FIG. 3, but with therobot arm of the robotic assembly in a second rotational andtranslational position.

FIG. 5 is a perspective view of a portion of the robotic assembly ofFIG. 3, with the robot arm being in a first rotational and translationalposition adjacent a first storage array of the storage library.

FIG. 6 is a close-up perspective view of a portion of FIG. 5.

FIG. 7 is a perspective view similar to FIG. 5, but with the robot armbeing in another rotational and translation position that is between thefirst and second storage arrays of the storage library.

FIG. 8 is a close-up perspective view of a portion of FIG. 7.

FIG. 9 is a perspective view similar to FIG. 7, but with the robot armbeing in another rotational and translation position adjacent the secondstorage array of the storage library.

FIG. 10 is a close-up perspective view of a portion of FIG. 9.

FIG. 11 is a perspective view similar to FIG. 9, but from an oppositeperspective.

FIG. 12 is a plan view of first and second robotic assemblies mountedover the first and second storage arrays of the storage library of FIG.1, where the robot arms of the first and second robotic assemblies arein respective first rotational and translational positions adjacent thefirst and second storage arrays to allow the first and second robot armsto pass each other along an x-axis of the storage library.

FIG. 13 is a plan view similar to FIG. 12, but with the robot arm of thefirst robotic assembly reaching across the aisle of the storage libraryinto a second rotational and translational position that is adjacent thesecond storage array.

FIG. 14 is a perspective view similar to the plan view of FIG. 12.

FIG. 15 is a perspective view similar to the plan view of FIG. 13.

DETAILED DESCRIPTION

Disclosed herein are systems and apparatuses that reduce roboticassembly contention for job completions in media element storagelibraries by translating (e.g., displacing) a robot arm of a firstrobotic assembly mounted over a first storage array of a storage libraryaway from a central reference plane as the robot arm is being pivotedinto a first position adjacent the first storage array to allow a robotarm of a second robotic assembly to slide or otherwise move past therobot arm of the first robotic assembly, even when the robot arms of thefirst and second robotic assemblies are disposed at the same height(e.g., along a z-axis) within the storage library. The robot arm of thedisclosed robotic assembly includes any appropriate pivot apparatus ormember (e.g., pivot pin or the like) that facilitates pivoting orrotation of the robot arm about the pivot axis (e.g., about the z-axisor the x-axis) between the first and second rotational positions. Thepivot member is mounted on a movable carriage that is configured toslide or otherwise translate (e.g., along the y-axis or x and y-axes)between first and second translation positions relative to a mountingapparatus or member of the robotic assembly in response to the pivotmember of the robot arm being pivoted about the pivot axis (via a camassembly interconnected between the pivot member, the carriage and themounting member).

Before discussing the disclosed systems and apparatuses in more detail,reference is now initially made to FIGS. 1-2 which present views of amedia element storage library 100 within which the disclosed roboticassemblies 200 may be incorporated in a manner that reduces contentionbetween the robotic assemblies 200 to complete jobs within the storagelibrary 100. Broadly, the storage library 100 may be a data storage andretrieval system for one or more computers, servers, and/or the like andmay be designed for handling and storing a plurality of media elementsand for reading and writing to the media elements using media elementplayers. As used herein, a media element denotes any physical substratesuitable for storing data, such as a tape cartridge and/or the like. Amedia element player may be a media element reader and/or writer (suchas a tape drive) that translates the data stored on a media element intosignals readable by a computer and/or server for reading operationsand/or writes data to the media element in response to a command fromthe computer and/or server for writing operations. While FIGS. 1-2illustrate one embodiment of a storage library, it is to be understoodthat the robotic assemblies 200 disclosed herein may be utilized innumerous other storage libraries and contexts in which it is desired tolimit robotic assembly contention for media element job completion.

Generally, the storage library 100 may be constructed of any appropriateupright framework or structure that allows for rapid storage and accessof media elements by the robotic assemblies 200 (e.g., first, second,third and fourth robotic assemblies 200 ₁, 200 ₂, 200 ₃, 200 ₄) based oncommands received from any appropriate interconnected system controllerand/or host device (e.g., server, computer, etc.). As an example, thestorage library 100 may include a first storage wall or array 104 and anopposite second storage wall or array 108 spaced from the first storagearray 104 by an aisle or interior portion 112. Each of the first andsecond storage arrays 104, 108 may include a plurality of media elementstorage slots 116 for receiving respective media elements (not shown),where the storage cells or slots 116 of the first storage array 104oppose or face the storage slots 116 of the second storage array 108. Inone arrangement, the various storage slots 116 may be embodied within aplurality of removable storage library modules (e.g., magazines, notshown) of any appropriate form factors that are configured to bepositioned within (e.g., inserted into) respective bays (not shown)formed on or in inside surfaces of the first and second storage arrays104, 108 and removably secured to the first and second storage arrayssuch as via latches, thumbscrews, and/or the like (e.g., where thevarious bays may be spaced by any appropriate spacing such as by 1 U,2U, or the like).

Each robotic assembly 200 may be generally configured to move in avarious manners and dimensions within the interior portion 112 of thestorage library 100 to manipulate one or more media elements within thestorage library 100. As an example, each robotic assembly 200 mayinclude a robot arm 204 (e.g., hand assembly) housing a media element“picker assembly” (not shown) that is configured (e.g., based on commandsignals received from the system controller and/or host computer) tograb and release media elements as part of manipulating media elementsin storage slots 116 of either of the first or second storage arrays104, 108 within the storage library 100. For instance, each roboticassembly 200 may be configured to remove media elements from storageslots 116 of either of the first or second storage arrays 104, 108 andinsert the same into media element players 120 (e.g., tape drives) forreading and/or writing of data, remove media elements from the mediaelement players 120 and insert the same into the slots 116 of either ofthe first and second storage arrays 104, 108, read labels on the mediaelements or media players 120, deliver or retrieve media elements from amedia element import/export opening of the storage library 100, and/orthe like. The various media element players 120 may be housed withinmedia player cabinets 124 positioned adjacent the first or secondstorage arrays 104, 108 for access by the robotic assemblies 200 and/orelsewhere within the storage library 100.

The storage library 100 may include a removable power/controller module(not shown) that includes, inter alia, a power supply for supplying thepower required by the robotic assemblies 200 to manipulate the mediaelements and control electronics for generating electrical controlsignals to control the operation of the robotic assemblies 200. Forinstance, the power/controller module may be plugged into and removedfrom a respective bay or slot of the storage library 100. Furthermore,the power/controller module may include or be associated with anyappropriate computer program products, i.e., one or more modules ofcomputer program instructions encoded on a non-transitorycomputer-readable medium for execution by a data processing apparatus tocontrol the operation of the robotic assemblies 200 and other componentsof the storage library 100. In this regard, the power/controller modulemay encompass one or more apparatuses, devices, and machines forprocessing data, including by way of example a programmable processor, acomputer, or multiple processors or computers.

With reference to FIGS. 1-2, at least one robotic assembly 200 ismounted over (but not necessarily to) each of the first and secondstorage arrays 104, 108 for moving (e.g., translating, sliding, etc.)along an x-axis 300 that horizontally extends along a length of thefirst and second storage arrays 104, 108. For instance, first and thirdrobotic assemblies 200 ₁, 200 ₃ may be mounted for x-axis translationover the first storage array 104 and second and fourth roboticassemblies 200 ₂, 200 ₄ may be mounted for x-axis translation over thesecond storage array 108. However, more or fewer than two roboticassemblies 200 may be mounted over each of the first and second storagearrays 104, 108. In any case, and as will be discussed in more detailherein, each robotic assembly 200 may be configured to access ormanipulate media elements of both of the first and second storage arrays104, 108 as well as translate along the x-axis 300 past another one ofthe robotic assemblies 200, even when robot arms 204 of the roboticassemblies 200 are disposed at the same height along a z-axis 308 thatvertically extends along a height of the first and second storage arrays104, 108.

With reference now to FIGS. 1-4, each robotic assembly 200 may includeat least one x-axis guiding apparatus that is configured to engage witha corresponding x-axis guiding apparatus of the storage library 100 tofacilitate translation (e.g., sliding, movement, displacement) of therobotic assembly 200 along the x-axis 300 (or along a course that isparallel to the x-axis 300). As an example, each robotic assembly 200may include a first (e.g., upper) guiding apparatus 208 and an oppositesecond (e.g., lower) guiding apparatus 212 that are configured torespectively engage with corresponding first and second opposite x-axisguiding apparatuses 128, 132 near or adjacent upper and lower portionsof the first or second storage array 104, 108. For instance, first andsecond x-axis guiding apparatuses 128, 132 may be in the form of a railassembly including tracks, grooves, rails, etc. and the first and secondguiding apparatuses 208, 212 may include rollers (e.g., wheels) or thelike that are respectively configured to be received in and translatealong the rail assembly to move the robotic assembly 200 along orparallel to the x-axis 300. However, the x-axis guiding apparatuses maytake numerous other forms, all of which are encompassed herein.

Each robotic assembly 200 may also include a z-axis guiding apparatus216 that is configured to facilitate translation (e.g., sliding,movement, displacement) of the robot arm 204 along or parallel to thez-axis 308. As just one example, the z-axis guiding apparatus 216 mayinclude a rail assembly 220 extending along or parallel to the z-axis308 and interconnected between the first and second x-axis guidingapparatuses 208, 212, and a z-axis translation member 224 appropriatelyinterconnected to the robot arm 204 that is configured to translate(e.g., slide, move, etc.) along the rail assembly 220. For instance, thez-axis translation member 224 may include a plurality of bearing members(e.g., rollers, wheels, balls) that are configured to roll or ride alongthe rail assembly 220 to move the robot arm 204 along or parallel to thez-axis 308. While one arrangement for facilitating movement of the robotarm 204 along or parallel to the z-axis 308 is illustrated, it is to beunderstood that various other arrangements for and manners of moving therobot arm 204 along or parallel to the z-axis 308 are envisioned andencompassed herein.

As discussed previously, the robot arms of two or more existing roboticassemblies mounted on the same rail assembly over a common storage arrayare sometimes configured to manipulate media elements of either of firstor second spaced storage arrays (e.g., such as first and second storagearrays 104, 108), such as by pivoting or rotating through 180 degrees(e.g., about a pivot axis that extends along or is otherwise parallel tothe z-axis 308) or the like to access the first or second storage arraysas appropriate. However, contention between the two or more roboticassemblies often arises when one of the robotic assemblies needs to moveto a location (e.g., along x-axis 300) that is past another one of therobotic assemblies resulting in media element access delays and otherinefficiencies within the storage library. Even if first and second ofsuch robotic assemblies were respectively mounted over the first andsecond storage arrays on different respective rail assemblies,contention would still result because the pivot axes of the robot armsare typically disposed halfway between the first and second storagearrays (e.g., halfway along y-axis 304) to allow the robot arms toaccess either of the first or second storage arrays by pivoting through180°.

As will be discussed in more detail in the discussion that follows, therobot arm 204 of each robotic assembly 200 is pivotable about a pivotaxis 312 that translates (e.g., moves, displaces) along a translationaxis 316 (e.g., parallel to the y-axis 304) away from a centralreference plane 320 that is halfway between the first and second storagearrays 104, 108 and parallel to the x and z-axes 300, 308 in response toand simultaneously with the robot arm 204 being pivoted about the pivotaxis 316 into a first position adjacent the storage array over which therobotic assembly 200 is mounted (e.g., the first storage array 104 forrobotic assemblies 200 ₁, 200 ₃; the second storage array 108 forrobotic assemblies 200 ₂, 200 ₄) to create a space 136 within theinterior space 116 of the storage library through which another roboticassembly 200 mounted over the opposing storage array can pass, even whenthe robot arms 204 of the two robotic assemblies are disposed at thesame height (e.g., along the z-axis 308) within the storage library 100.For instance, see space 136 created by robot arm 204 of first roboticassembly 200 ₁ in FIGS. 2 and 12 after pivoting about its pivot axis 312into its first position adjacent first storage array 104 from its secondposition adjacent second storage array 108 in FIG. 10.

Reference is now made to FIGS. 5-11 which present various perspectiveviews of a robot arm 204 of the first robotic assembly 200 ₁ in variousdifferent rotational and translational positions and FIGS. 12-13 whichpresent plan views of the robot arms 204 of the first and second roboticassemblies 200 ₁, 200 ₂, where the robot arms 204 of the first andsecond robotic assemblies 200 ₁, 200 ₂ are in respective firstrotational and translational positions adjacent the first and secondstorage arrays 104, 108 in FIG. 12 and the robot arm 204 of the firstrobotic assembly 200 ₁ has been pivoted about its pivot axis 312 toreach across the interior space 112 of the storage library 100 into asecond rotational and translational position that is adjacent the secondstorage array 108 in FIG. 13. It is to be understood that thisdiscussion is applicable to additional robotic assemblies used with thestorage library (e.g., third and fourth robotic assemblies 200 ₃, 200 ₄,etc.).

Broadly, each robot arm 204 may generally include a housing 228 (e.g.,constructed of plastics, composites, etc.) that is configured to houseor otherwise contain any appropriate electronics and other componentsfor use in completing jobs within the storage library 100 such as apicker assembly (not shown) that is configured to telescope withinand/or out of the housing 228 to grab media elements 232 (e.g., seeFIGS. 3-4), a scanning device 236 (e.g., see FIG. 5) that is configuredto read information on the media elements and media players, and thelike. Furthermore, the housing 228 of each robot arm 204 includes afirst free end 240 through which the picker assembly is configured toemerge for manipulating media elements and an opposite second free end244.

The robot arm 204 is pivotally and translatably attached to the z-axisguiding apparatus 216 through a mounting member 246, a carriage member248 slidably attached to the mounting member 248 for movement relativeto the mounting member 248 along the translation axis 316, at least onepivot member 242 (e.g., pivot pin, rod, shaft, etc., see FIG. 6) rigidlyattached to the robot arm 204 (e.g., such that rotation of the robot arm204 induces corresponding rotation of the pivot member 242) thatpivotally attaches the robot arm 204 to the carriage member 248 forrotation about the pivot axis 312, and a cam assembly 250 that inducestranslation of the carriage member 248 (and thus the pivot axis 312)along or parallel to the translation axis 316 as the robot arm 204 ispivoted about pivot axis 312 (e.g., via a motor under command of asystem controller). In this regard, the robot arm 204 may be configuredto pivot about pivot axis 312 and simultaneously translate alongtranslation axis 316 as the z-axis guiding apparatus 216 moves the robotarm 204 along the z-axis 308.

For instance, the mounting member 246 may be in the form of a rigidmember (e.g., rigid bracket) that is rigidly or otherwise non-movablysecured to the z-axis translation member 224, such as through fasteners252 being inserted through aligned apertures 254 in the mounting member246 and the z-axis translation member 224. The carriage member 248 mayalso be in the form of any appropriate rigid member or bracket that isslidably attached to the mounting member 246 so as to slide or translatealong the translation axis 316 (e.g., along or parallel to the y-axis304). As just one example, the carriage member 248 may include anelongated rod 256 (e.g., tube, post, etc.) extending along or parallelto the translation axis 316 that is configured to be slidably receivedin a correspondingly shaped elongated aperture 258 of the mountingmember 246.

The robot arm 204 may be pivotally attached to the carriage member 248for rotation about pivot axis 312 in any appropriate manner. As oneexample, the second free end 244 of the housing 228 of the robot arm 204may be received between upper and lower portions 260, 261 (e.g.,brackets, tabs, etc.) of the carriage member 248 and pivotally securedthereto such as via the pivot member 242 pivotally attaching an upperportion of the housing 228 to the upper portion 260 of the carriagemember 248 and another pivot member 243 pivotally attaching a lowerportion of the housing 228 to the lower portion 261 of the carriagemember 248 (e.g., see FIG. 8). In another arrangement, a single pivotmember may extend through the housing 228 of the robot arm 204 and intothe upper and lower portions 260, 261 of the carriage member 248.Various other manners of pivotally attaching the robot arm 204 to thecarriage member 248 about pivot axis 312 are envisioned and encompassedherein.

The robot arm 204 may be driven to pivot about the pivot axis 312 in anyappropriate manner. As just one example, any appropriate gear 262 (e.g.,bevel gear) may be rigidly (non-movably) secured to or relative to thepivot member of the robot arm 204 that is adapted to be driven by acorresponding gear 265 (e.g., bevel gear) attached to a shaft of a motor264 that is driven under control of the system controller. See FIGS. 6,7, 10 and 11. For instance, the motor shaft and gear 265 may be receivedthrough an aperture in a portion 263 (e.g., tab, bracket, wall) of thecarriage member 248 so that the motor 264 translates with the carriagemember 248 along or parallel to the translation axis 316. Of course,other manners of inducing rotation of the robot arm 204 about pivot axis312 are also envisioned and encompassed herein.

As mentioned herein, the robotic assembly 200 also includes a camassembly 250 that induces translation of the carriage member 248 (andthus the pivot axis 312) along or parallel to the translation axis 316as the robot arm 204 is pivoted about pivot axis 312. See FIGS. 5 and7-10. In one arrangement, the cam assembly 250 may incorporate aspectsof a Scotch yoke or slotted link mechanism that converts the rotationalmotion of the robot arm 204 about pivot axis 312 into linear translationof the carriage member 248 (and thus pivot axis 312 and second free end244 of housing 228) along or parallel to translation axis 316. As anexample, the mounting member 246 may include an elongated aperture suchas a slot 266 generally extending along an axis (not labeled) that isperpendicular to the translation axis 316 within which a sliding member267 of a rotating component 268 that is rotatably attached to thecarriage member 248 (e.g., to upper portion 260) is configured toreciprocate or otherwise slide.

For instance, the rotating component 268 may be in the form of a gear(e.g., spur gear) that is configured to rotate about a rotation axis(not labeled) that is parallel to the pivot axis 312, where the slidingmember 267 (e.g., pin, wheel, etc.) is eccentrically attached to thegear (e.g., to an outer perimeter of the gear). As the mounting member246 is configured to be rigidly (non-movably) attached to the z-axisguiding apparatus 216 (e.g., rigidly attached to the z-axis translationmember 224, rotation of the rotating component 268 about its rotationaxis in one of a clockwise or counterclockwise direction (e.g., asshown, in the counterclockwise direction) urges the sliding member 267to slide along the slot 266 along a first course which simultaneouslydrives the carriage member 248 along the translation axis 316 in adirection towards the storage array over which the robotic assembly 200is mounted (e.g., the first storage array 104 in the case of the firstrobotic assembly 200 ₁ and the second storage array 108 in the case ofthe second robotic assembly 200 ₂). In contrast, rotation of therotating component 268 about its rotation axis in the other of theclockwise or counterclockwise direction (e.g., as shown, in theclockwise direction) urges the sliding member 267 to slide along theslot 266 along a second course opposite the first course whichsimultaneously drives the carriage member 248 along the translation axis316 in a direction away from the storage array over which the roboticassembly 200 is mounted (e.g., the second storage array 108 in the caseof the first robotic assembly 200 ₁ and the first storage array 104 inthe case of the second robotic assembly 200 ₂).

The cam assembly 250 also includes a system for inducing rotation of therotating component 268 about its rotation axis in one of the clockwiseor counterclockwise directions simultaneous with rotation of the robotarm 204 about its pivot axis 312 in the one of the clockwise orcounterclockwise directions. In one arrangement, the pivot member 242may include a gear 269 (e.g., spur gear) rigidly (non-movably) securedto or relative to the pivot member 242 of the robot arm 204 that isconfigured to rotate about the pivot axis 312 as the pivot member 242rotates about the pivot axis 312. To induce rotation of the rotatingcomponent 268 in the same rotational direction as the gear 269 (and thusthe robot arm 204), the cam assembly 250 may include an intermediategear 270 (e.g., spur gear) that is configured to simultaneously meshwith the teeth of the gear 269 and the rotating component 268. In thisregard, rotation of the gear 269 in a counterclockwise direction (e.g.,by driving of gear 262 in the counterclockwise direction by gear 265 ofmotor 264) induces simultaneous rotation of the intermediate gear 270 ina clockwise direction which, in turn, induces simultaneous rotation ofthe rotating component 268 in the counterclockwise direction (and viceversa). While one arrangement of gears has been shown to induce rotationof the rotating component 268 during rotation of the robot arm 204, itis to be understand that various other arrangements and type of gearsand/or other components could be appropriately incorporated into the camassembly 250 to rotate the rotating component 268 during rotation of therobot arm 204 which are hereby incorporated in the present disclosure.

To facilitate the reader's understanding of how the disclosed utilitiesreduce contention between robotic assemblies within a storage library,reference is now initially made to FIGS. 1-2, 5 and 12. As shown, therobot arm 204 of each of the first, second, third and fourth roboticassemblies 200 ₁, 200 ₂, 200 ₃, 200 ₄ is disposed in its firstrotational position about pivot axis 312 and in its first translationalposition along or relative to translation axis 316. In the case of thefirst and third robotic assemblies 200 ₁, 200 ₃, the carriage member 248is positioned at a first translational position along the translationaxis 316 relative to the mounting member 246 and first storage array 104thus spacing the pivot axis 312 a first distance 271 from the firststorage array 104 (as the pivot axis 312 is fixed relative to thecarriage member 248). Furthermore, the first free end 240 of the robotarm 204 is adjacent the first storage array 104 on one side of the pivotaxis 312 for manipulation of media elements thereof (e.g., by pickerassembly) or the like while the second free end 244 of the robot arm 204is spaced from the first storage array 104 on an opposite side of thepivot axis 312 but between the central reference plane 320 and the firststorage array 104.

In the case of the second and fourth robotic assemblies 200 ₂, 200 ₄,the carriage member 248 is positioned at a first translational positionalong the translation axis 316 relative to the mounting member 246 andsecond storage array 108 thus spacing the pivot axis 312 a firstdistance (not labeled) from the second storage array 108 (as the pivotaxis 312 is fixed relative to the carriage member 248). Furthermore, thefirst free end 240 of the robot arm 204 is adjacent the second storagearray 108 on one side of the pivot axis 312 for manipulation of mediaelements thereof (e.g., by picker assembly) or the like while the secondfree end 244 of the robot arm 204 is spaced from the second storagearray 108 on an opposite side of the pivot axis 312 but between thecentral reference plane 320 and the second storage array 108.

In this regard, spaces 136 are created or otherwise exist between thecentral axis 320 and the second storage array 108 through which thesecond and fourth robotic assemblies 200 ₂, 200 ₄ (or other such roboticassemblies 200 mounted over the second storage array 108) can translatealong or parallel to the x or z-axes 300, 308 (when the second andfourth robotic assemblies 200 ₂, 200 ₄ are in their first rotational andtranslational positions) and between the central axis 320 and the firststorage array 104 through which the first and third robotic assemblies200 ₁, 200 ₃ (or other such robotic assemblies 200 mounted over thefirst storage array 104) can translate along or parallel to the x orz-axes 300, 308 (when the first and third robotic assemblies 200 ₁, 200₃ are in their first rotational and translational positions) forcompleting jobs within the storage library 100. For instance, see robotarm 204 of second robotic assembly 200 ₂ passing through space 136 inFIG. 12 free of contact with the robot arm 204 of the first roboticassembly 200 ₁.

Assume now that the system controller of the storage library 100 hasreceived a request from a host computer for data located on a particularmedia element disposed within a slot 116 of the second storage array 108and that the system controller has determined that the first roboticassembly 200 ₁ is going to fulfill the request (e.g., by grabbing themedia element and inserting the same into a media player 120 of thestorage library 100). For instance, the system controller may, ifnecessary, instruct the first robotic assembly 200 ₁ to translate orotherwise move along or parallel to the x-axis 300 to an x-axiscoordinate that aligns with the particular media element in the secondstorage array 108. The system controller may also, if necessary,instruct the first robotic assembly 200 ₁ to translate or otherwise moveits robot arm 204 along or parallel to the z-axis 308 to a z-axiscoordinate that aligns with the particular media element in the secondstorage array 108. Part of the aforementioned process may includedetermining whether any other robotic assemblies 200 are disposed in thepath of the first robotic assembly 200 ₁ and/or its robot arm 204 andcommanding such robotic assemblies 200 to move to different locations inthe storage library and/or waiting to move the first robotic assembly200 ₁ and/or its robot arm 204.

In any case, the system controller may then command the first roboticassembly 200 ₁ to pivot its robot arm 204 about its pivot axis 312 inone of a clockwise or counterclockwise direction into a secondrotational position which, as discussed herein, also simultaneouslytranslates the robot arm 204 into a second translational position alongor parallel to the translation axis 316 that is spaced from the firsttranslational position away from the first storage array 104. CompareFIGS. 3-4; FIGS. 5, 7 and 9; FIGS. 12-13; and FIGS. 14-15. For instance,the system controller may power the motor 264 (see FIG. 8) to rotatebevel gear 265 to induce simultaneous rotation of gear 262, pivot member242, robot arm 204, gear 269, intermediate gear 270, and rotatingcomponent 268 as discussed above. As also discussed previously, rotationof rotating component 268 about its rotation axis in the one of theclockwise or counterclockwise direction urges the sliding member 267 toslide along the slot 266 which simultaneously drives the carriage member248 along the translation axis 316 in a direction away from the firststorage array 104 into the second translational position. As the robotarm 204 is pivotally attached to the carriage member 248 at a fixedlocation on the carriage member 248 (via pivot member 242), driving ofthe carriage member 248 also simultaneously drives the pivot axis 312and the robot arm 204 along or parallel to the translation axis 316 intothe second translational position as the robot arm 204 is being pivotedabout pivot axis 312 into its second rotational position.

With reference to FIGS. 9-11 and 13, the carriage member 248 of thefirst robotic assembly 200 ₁ is positioned at a second translationalposition along the translation axis 316 relative to the mounting member246 and first storage array 104 thus spacing the pivot axis 312 a seconddistance 272 from the first storage array 104 that is greater than thefirst distance 271. Furthermore, the first free end 240 of the robot arm204 of the first robotic assembly 200 ₁ is now adjacent the secondstorage array 108 on one side of the pivot axis 312 for manipulation ofmedia elements thereof (e.g., by picker assembly) while the second freeend 244 is spaced from the second storage array 108 on an opposite sideof the pivot axis 312 but between the central reference plane 320 andthe second storage array 108. In other words, the pivot axis 312 hastranslated or displaced from one side of the central reference plane 320to the opposite side of the central reference plane 320 thus allowingthe robot arm 204 to “reach across” the interior space 112 to the secondstorage array 108 (e.g., where the distance between the pivot axis 312and the central reference plane 320 in FIG. 12 is approximately equal tothe distance between the pivot axis 312 and the central reference plane320 in FIG. 13). Compare FIGS. 12-13.

More specifically, had the pivot axis 312 been fixed relative to themounting member 246 and thus the first and second storage arrays 104,108 in FIG. 12 (where the pivot axis is disposed between the centralreference plane 320 and the first storage array 104), rotation of therobot arm 204 about the pivot axis 312 would have resulted in the firstfree end 240 of the robot arm 204 being spaced farther from the secondstorage array 108 in the second rotational position than the first freeend 240 is spaced from the first storage array 104 in the firstrotational position of FIG. 13 resulting in complications with thepicker assembly manipulating media elements among other inefficiencies.

In this regard, the disclosed utilities effectively move robot arms 204of robotic assemblies 100 mounted over one of the first and secondstorage arrays 104, 108 out of the path of robot arms of roboticassemblies mounted over the other of the first and second storage arrays104, 108 to limit contention between the robotic assemblies and increasethroughput of the storage library 100. Another advantage of thedisclosed utilities is the ability to simultaneously pivot and translatethe robot arms 204 of the robotic assemblies 200 in the mannersdisclosed herein through use of a single actuator or servo (e.g., themotor 264 of FIG. 11) rather than through use of two or more actuators(e.g., one to rotate or control rotation of the robot arm 204 andanother to translate or control translation of the robot arm 204).

It will be readily appreciated that many additions and/or deviations maybe made from the specific embodiments disclosed in the specificationwithout departing from the spirit and scope of the invention. In onearrangement, for example, the cam assembly 250 may include a worm geardriven by a motor that is configured to mesh with and drive the rotatingcomponent 268 (e.g., where the rotating component is in the form of ahelical gear). In this regard, operation of the motor to drive the wormgear and rotate the rotating component 268 drives the carriage member248 towards or away from the mounting member 246 and simultaneouslyrotates the robot arm 204 about the pivot axis 312. In this arrangement,the gear 262 and motor 264 would not be necessary. Furthermore, anintermediate gear may be intermeshed with the rotating component 268 andthe pivot member 242 in any appropriate manner. As another example, thefirst and second x-axis guiding apparatuses of the first and secondstorage arrays 104, 108 could in some arrangements be mounted in or on aceiling and/or floor (not labeled) of the storage library 100. Stillfurther, the utilities disclosed herein may be applied to robot armsother than those specifically shown herein.

The illustrations and discussion herein has only been provided to assistthe reader in understanding the various aspects of the presentdisclosure. Furthermore, one or more various combinations of the abovediscussed arrangements and embodiments are also envisioned. While thisdisclosure contains many specifics, these should not be construed aslimitations on the scope of the disclosure or of what may be claimed,but rather as descriptions of features specific to particularembodiments of the disclosure. Furthermore, certain features that aredescribed in this specification in the context of separate embodimentscan also be implemented in combination in a single embodiment.Conversely, various features that are described in the context of asingle embodiment can also be implemented in multiple embodimentsseparately or in any suitable subcombination. Moreover, althoughfeatures may be described above as acting in certain combinations andeven initially claimed as such, one or more features from a claimedcombination can in some cases be excised from the combination, and theclaimed combination may be directed to a subcombination or variation ofa sub combination.

Similarly, while operations are depicted in the drawings in a particularorder, this should not be understood as requiring that such operationsbe performed in the particular order shown or in sequential order, orthat all illustrated operations be performed, to achieve desirableresults. In certain circumstances, multitasking and/or parallelprocessing may be advantageous. Moreover, the separation of varioussystem components in the embodiments described above should not beunderstood as requiring such separation in all embodiments, and itshould be understood that the described program components and systemscan generally be integrated together in a single software and/orhardware product or packaged into multiple software and/or hardwareproducts.

The above described embodiments including the preferred embodiment andthe best mode of the invention known to the inventor at the time offiling are given by illustrative examples only.

We claim:
 1. A robotic assembly for manipulating media elements in amedia element storage library, comprising: a mounting apparatus; acarriage member slidably attached to the mounting apparatus for movementrelative to the mounting apparatus along a translation axis; a robot armpivotally attached to the carriage member for rotation about a pivotaxis fixed through the carriage member between at least a firstrotational position for manipulating media elements of a first storagearray of a storage library and a second rotational position formanipulating media elements of a second storage array of the storagelibrary that is spaced from the first storage array; and a cam assemblythat induces translation of the carriage member along the translationaxis between at least a first translational position in response torotation of the robot arm about the pivot axis into the first rotationalposition and a second translational position in response to rotation ofthe robot arm about the pivot axis into the second rotational position.2. The robotic assembly of claim 1, wherein the cam assembly includes: aslot within the mounting apparatus; a rotating component rotatablyattached to the carriage member for rotation about a rotation axis; anda sliding member attached to the rotating component and slidablyreceived in the slot, wherein rotation of the robot arm about the pivotaxis induces rotation of the rotating component about the rotation axisto slide the sliding member in the slot and thereby simultaneouslytranslate the carriage member along the translation axis.
 3. The roboticassembly of claim 2, further including: a pivot member pivotallyattached to the carriage member along the pivot axis, wherein the robotarm is non-movably attached to the pivot member, and wherein rotation ofthe pivot member about the pivot axis induces rotation of the rotatingcomponent about the rotation axis to slide the sliding member in theslot and thereby simultaneously translate the carriage member along thetranslation axis.
 4. The robotic assembly of claim 3, wherein the pivotmember includes a first gear non-movably attached thereto for rotationabout the pivot axis, wherein the rotating component includes a secondgear rotatable about the rotation axis, and wherein the cam assemblyfurther includes a third gear intermeshed with the first and secondgears that induces rotation of the second gear about the rotation axisin a clockwise or counterclockwise direction when the first gear isrotated about the pivot axis in the clockwise or counterclockwisedirection.
 5. The robotic assembly of claim 2, wherein the pivot axis isspaced from and parallel to the rotation axis.
 6. The robotic assemblyof claim 5, wherein the slot extends along a reference axis, wherein thereference axis is perpendicular to the translation axis, and wherein thetranslation axis is perpendicular to the pivot axis.
 7. The roboticassembly of claim 1, wherein the translation axis is perpendicular tothe pivot axis.
 8. The robotic assembly of claim 1, wherein the robotarm includes: a housing; and a hand assembly slidably attached to thehousing for manipulating media elements of the first and second storagearrays.
 9. The robotic assembly of claim 1, further including: an x-axisguiding apparatus configured to slide relative to a corresponding x-axisguiding apparatus of the storage library along or parallel to an x-axis;and a z-axis guiding apparatus interconnected to the x-axis guidingapparatus of the robotic assembly that facilitates movement of themounting apparatus along or parallel to a z-axis, wherein the z-axis isperpendicular to the x-axis.
 10. The robotic assembly of claim 9,wherein the pivot axis is parallel to the z-axis.
 11. The roboticassembly of claim 9, wherein the pivot axis is perpendicular to thez-axis.
 12. The robotic assembly of claim 9, wherein the translationaxis is perpendicular to the x-axis and z-axis.
 13. A media elementstorage library, comprising: a first storage array including a pluralityof media element storage slots; a second storage array including aplurality of media element storage slots; an aisle separating the firstand second storage arrays; a first robotic assembly of claim 1 mountedover the first storage array for manipulating media elements in themedia element storage slots of the first and second storage arrays; anda second robotic assembly of claim 1 mounted over the second storagearray for manipulating media elements in the media element storage slotsof the first and second storage arrays.
 14. A method of operating arobotic assembly of a media element storage library, comprising: firstrotating a robot arm of a robotic assembly about a pivot axis from afirst rotational position adjacent a first storage array of a mediaelement storage library to a second rotational position adjacent asecond storage array that is spaced from the first storage array; andfirst translating the pivot axis towards the second storage array indirect response to and simultaneously with the rotating step.
 15. Themethod of claim 14, wherein the first translating includes: displacingthe pivot axis along a translation axis from a first translationalposition to a second translational position that is disposed between thefirst translational position and the second storage array.
 16. Themethod of claim 14, further including: second rotating the robot armabout the pivot axis from the second rotational position to the firstrotational position; second translating the pivot axis towards the firststorage array in direct response to and simultaneously with the secondrotating step.
 17. The method of claim 16, wherein the secondtranslating includes: displacing the pivot axis along a translation axisfrom a second translational position to a first translational positionthat is disposed between the second translational position and the firststorage array.
 18. A media element storage library, comprising: a firststorage array including a plurality of media element storage slots; asecond storage array including a plurality of media element storageslots, wherein the media element storage slots of the second storagearray are spaced from and face the media element storage slots of thefirst storage array; a first robotic assembly configured to translateover the first storage array parallel to an x-axis, wherein the firstrobotic assembly includes a robot arm that is pivotal about a pivot axisbetween at least a first rotational position for manipulating mediaelements in the media element storage slots of the first storage arrayand a second rotational position for manipulating media elements in themedia element storage slots of the second storage array; and a secondrobotic assembly configured to translate over the second storage arrayparallel to the x-axis, wherein the second robotic assembly includes arobot arm that is pivotal about a pivot axis between at least a firstrotational position for manipulating media elements in the media elementstorage slots of the second storage array and a second rotationalposition for manipulating media elements in the media element storageslots of the first storage array, and wherein the robot arms of thefirst and second robotic assemblies are simultaneously positionable intheir respective first rotational positions at a common height along az-axis that is perpendicular to the x-axis.
 19. The media elementstorage library of claim 18, wherein pivoting of the robot arm of thefirst robotic assembly about the pivot axis of the first roboticassembly induces simultaneous translation of the pivot axis of the firstrobotic assembly along a first course that is parallel to a y-axis,wherein pivoting of the robot arm of the second robotic assembly aboutthe pivot axis of the second robotic assembly induces simultaneoustranslation of the pivot axis of the second robotic assembly along asecond course that is parallel to the y-axis, and wherein the y-axis isperpendicular to each of the x and z-axes.
 20. The media element storagelibrary of claim 18, wherein the pivot axes of the first and secondrobotic assemblies are parallel to the z-axis or the x-axis.